home *** CD-ROM | disk | FTP | other *** search
/ PC Elektro 3 / PC-Elektro-3-cd1.bin / KBan 2.0 / KBANSRC.LZH / SRC / PROG / MEMDC.H < prev    next >
Encoding:
C/C++ Source or Header  |  1997-04-05  |  697 b   |  33 lines

  1. /*
  2.  * a header of the class CMemoryDC
  3.  * Copyright (C) 1997 Kazutaka Hirata <khirata@jove.acs.unt.edu>
  4.  */
  5.  
  6. #ifndef _MEMDC_H_
  7. #define _MEMDC_H_
  8.  
  9. // stdafx.h should be included already.
  10.  
  11. class CMemoryDC : public CDC {
  12.   CBitmap* m_pBmp;
  13.   CBitmap* m_pOldBmp;
  14. public:
  15.   CMemoryDC(CDC* pSrcDC, int nWidth, int nHeight, int nBitCount) : CDC() {
  16.     CreateCompatibleDC(pSrcDC);
  17.  
  18.     m_pBmp = new CBitmap;
  19.     m_pBmp->CreateBitmap(nWidth, nHeight, 1, nBitCount, NULL);
  20.  
  21.     m_pOldBmp = SelectObject(m_pBmp);
  22.   }
  23.   virtual ~CMemoryDC(void) {
  24.     SelectObject(m_pOldBmp);
  25.     delete m_pBmp;
  26.   }
  27.   CBitmap& GetBitmap(void) {
  28.     return *m_pBmp;
  29.   }
  30. };
  31.  
  32. #endif /* _MEMDC_H_ */
  33.